With developments in server virtualization technology, server system infrastructures constructed using virtualization technology are increasing. The server virtualization is a technology for causing a single physical server (physical host) to operate as a plurality of independent servers, and is capable of causing a plurality of independent logical operating systems (OS) to run on a single physical host. Such logical operating systems are referred to as virtual machines (or guest OS). Typical examples of the virtualization technology include Microsoft's Hyper-V and Vmware's Vmware®. This virtualization technology is utilized in cloud computing.
There are roughly two types of network configuration for the virtualization environment. One is a network capable of communication between virtual machines operating on the same physical host, which is referred to as an internal network. The other is a network capable of communication between virtual machines operating on different physical hosts, which is referred to as an external network. Each virtual machine can be provided with one or more virtual network interface cards (NIC), in which the use of either the internal network or the external network is determined.
Conventional systems that operate in the virtualization environment employ the external network to perform communication between applications running on virtual machines. This is because a system can rarely be constructed in which applications, a database server, a print server and the like in the system all run on a single physical host.
In the external network, a virtual network is bound to a physical NIC provided in the physical host, and all network traffic is routed through the physical NIC. Accordingly, communication between virtual machines that use the external network is performed via the physical NIC. In the case of using the external network, for example, in a high-volume printing system used to implement the core business of an enterprise, a large amount of data needs to be exchanged between applications, which consumes resources of the physical NIC. This tendency appears more significantly as the number of virtual machines operating on the same physical host increases because the physical NIC is shared by a plurality of virtual machines. Consequently, communication delays occur in the high-volume print processing.
As a specific example of a communication delay, a case has been reported in which the time required to transfer a large amount of files between virtual machines operating on the same physical host was approximately one hour using the internal network, but 8 hours using the external network. Aside from communication delays, there is a possibility that, in some cases, errors might occur in parts of the processing due to communication timeout.
As a conventional technique regarding a communication path between apparatuses, for example, Japanese Patent Laid-Open No. 2000-209278 discloses a method in which communication is performed between two communication apparatuses by using a plurality of communication paths. As a conventional technique for selectively using communication paths, for example, a technique has been proposed in which two physical NICs are mounted on a server (physical host), one of the NICs is used for communication with a client, and data shared between servers is placed in storage connected to the other NIC (Oracle Real Application Clusters, [online], Oracle Corporation, April, 2007, Internet, <URL:
http://www.oracle.com/lamg/jp/database/rac_home.html, for example).
However, the conventional techniques have been designed to operate in an environment in which the virtualization technology is not used, and thus have a problem in that selective use of the external network and the internal network is not possible in the virtualization environment. Japanese Patent Laid-Open No. 2000-209278 enables a connection to a wide area network (WAN) from a terminal in a local area network (LAN), and can be applied only to the external network in the virtualization environment. With Oracle Real Application Clusters, [online], Oracle Corporation, April, 2007, Internet, <URL:
http://www.oracle.com/lamg/jp/database/rac_home.html>, the internal network can be used only when the server and database server that share data operate on the same physical host, but otherwise, the external network is used.
In a system in which a large amount of data needs to be exchanged between applications by using the external network, resources of the physical NIC are consumed, causing communication delays, and in some cases communication errors. Because a plurality of virtual machines share the physical NIC, the possibility of the occurrence of communication delays and communication errors increases as the number of virtual machines operating on the same physical host increases.
For this reason, selective use of communication paths is necessary such as using the internal network to perform communication between virtual machines on the same physical host and using the external network to perform communication between virtual machines operating on different physical hosts.